Want to make creations as awesome as this one?

Transcript

Алгоритмизация и программирование

Алгоритмическая конструкцияследование

Оператор циклас параметром

Оператор ветвления

Оператор цикла с предусловием

Оператор цикла с предусловием While

Общий вид алгоритмической конструкции

Блок-схема алгоритмической конструкции

Частные случаи

Программа выполнится

Тело цикла не выполнится ни разу

Телот цикла будет выполняться бесконечно(зацикливание)

LearningApps

+ learningapps

+ Info

While <условие> do <тело цикла>; While <условие> do begin <тело цикла>; end;

i:=3; While i<=5 do begin write ('*'); end;

i:=5; While i<=3 do begin write ('*'); i:=i+1; end;

i:=3; While i<=5 do begin write ('*'); i:=i+1; end;

Алгоритмическая конструкция следование

Общий вид алгоритмической конструкции

Блок-схема алгоритмической конструкции

Математические функции, используемые для организации вычислений

Оператор присваивания

Процедуры для ввода и вывода данных

+ learningapps

+ Info

Алгоритмическая конструкция следование — последовательность команд алгоритма, которые выполняются в том порядке, в котором они записаны. Среди команд, образующих алгоритмическую конструкцию следование, отсутствуют команды, меняющие порядок выполнения других команд. var <имя переменной>: <тип переменной>; begin      <команда 1>; <команда 2>;     ...End.        

Для ввода данных предназначена команда read(). В скобках через запятую перечисляются имена переменных, значения которых необходимо ввести. Для вывода данных используют команду write(). Она позволяет выводить текстовые сообщения и числовые значения. Текстовые сообщения записываются в кавычках, выводятся в виде последовательности символов так, как записаны, и не анализируются при выполнении. При использовании команды writeln(); после вывода сообщения или числа происходит перевод курсора на следующую строку.

Оператор присваивания предназначен для того, чтобы:

  • задавать значения переменным;
  • вычислять значение выражения (результат будет записан как значение переменной).
Формат записи оператора присваивания:< имя переменной > := < выражение >;

В записи арифметического выражения используются знаки математических действий: сложения (+), вычитания (−), умножения (*), деления (/), а также целочисленного деления (div) и нахождения остатка (mod). Следует помнить, что операция деления (/) используется при вычислениях с данными типа real. Для данных типа integer используются операции div и mod.

Оператор цикла с параметром

Общий вид алгоритмической конструкции

Блок-схема алгоритмической конструкции

Использование оператора цикла с параметром

Решение математической задачи

Написать программу для вывода таблицы умножения на заданное число x.

Решение графической задачи

Нарисовать 20 квадратов с общим центром. Длина стороны самого большого квадрата 400, верхний левый угол расположен в точке (50; 50). Координаты верхнего левого и нижнего правого углов каждого следующего квадрата изменяются на a (a — вводится).

+ learningapps

+ Info

Параметр цикла i изменяется от N1 до N2, каждый раз увеличиваясь на 1 for var i:= N1 to N2 do begin тело цикла; end; Параметр i уменьшается на 1 при каждом выполнении тела цикла от N2 до N1 for var i:= N1 downto N2 do begin тело цикла; end;

uses GraphABC;var a,x1,y1, x2,y2: integer;begin write('Введи a = '); read(a); write(a); x1 := 50; y1 := 50; x2 := 450; y2 := 450;for var i := 1 to 20 dobegin Rectangle(x1,y1, x2,y2); x1 := x1 + a; y1 := y1 + a; x2 := x2 - a; y2 := y2 - a;end;end.  

Цикл с параметром используется тогда, когда известно количество повторений.

Этапы выполнения заданияI. Исходные данные: x (введенное число).II. Результат: 9 строк вида a * x = c.III. Алгоритм решения задачи 1. Значение переменной a изменяется в цикле от 1 до 9. 2. Значение переменной c = a * x. 3. Так как количество повторений заранее известно, используем цикл for.IV. Описание переменных: x, c — integer. V. ПрограммаVI. Тестированиеvar x, c : integer; begin write('Введите x = '); read(x); for var a : = 1 to 9 do begin c := a * x; writeln(a,' * ',x,' = ',c); end; end. Запустить программу. Ввести x = 7.

Оператор ветвления

Общий вид алгоритмической конструкции

Блок-схема алгоритмической конструкции

Использование оператора ветвления

Решение математической задачи

Задано число x. Нужно определить, является ли оно положительным или нет, и вывести соответствующее сообщение.

Решение графической задачи

В момент времени 00:00 на светофоре для пешеходов включили зеленый сигнал. Далее сигнал светофора сменяется каждую минуту: 1 минуту горит зеленый сигнал, 1 минуту — красный. Известно, что с момента включения светофора прошло m минут. Требуется нарисовать светофор с включенным сигналом в соответствии с введенным значением времени.

+ learningapps

+ Info

Для записи оператора ветвления используют команды if. Формат команды: if <условие> then begin Команды 1; end else begin Команды 2; end; Оператор ветвления может быть в полной или в сокращенной форме. В сокращенной форме отсутствует блок else: if <условие> then begin Команды; end;

Этапы выполнения заданияI. Исходные данные: m (заданное время).II. Результат: рисунок светофора, зависящий от значения m.III. Алгоритм решения задачи. 1. Рисование светофора (прямоугольник и 2 круга) с выключенными сигналами. 2. Ввод исходных данных.3. Цвет сигнала будет зависеть от того, четным или нечетным будет значение m. Если m четное — сигнал зеленый (закрашиваем нижний круг), если нечетное — красный (закрашиваем верхний круг).4. Закрасим нужный круг цветом в зависимости от четности m.IV. Описание переменных: m — integer.V. Программа: uses GraphABC; var m:integer; begin Rectangle(250,50, 390,250); SetBrushColor (clBlack); Circle(320,100,30); Circle(320,200,30); SetBrushColor (clWhite); writeln('Введите время'); read(m); writeln(m)1; if m mod 2 = 1 then FloodFill(320, 100,clRed) else FloodFill(320,200, clGreen); end.

Этапы выполнения задания I. Исходные данные: x (введенное число). II. Результат: добавлено сообщение. III. Алгоритм решения задачи. 1. Ввод исходных данных. 2. Проверка значения выражения ( x > 0). 3. Вывод результата. IV. Описание операции: x — целое число . V. Программа var x: integer; begin write('Введите x = '); read(x); if x > 0 then write('положительное') else write('не положительное'); end. VI. Тестирование Запустить и ввести значение x = 5.

Оператор ветвления - команда, реализующая алгоритмическую конструкцию ветвления на языке программирования.